Method of dispensing material based on edge detection

ABSTRACT

A dispensing system for depositing material on an electronic substrate includes a frame, a dispensing unit gantry movably coupled to the frame, a dispensing unit coupled to the dispensing unit gantry, a vision system gantry coupled to the frame, and a vision system coupled to the vision system gantry. A controller is configured to manipulate the vision system with the vision gantry system to move to the position defined by a feature, to acquire an image of at least a portion of a feature, to search for an edge of interest along a center of the image, and to return a value indicating an offset of zero (0), which is interpreted as the location that is exactly as expected, and an offset that reflects where the edge of interest intersected that axis location.

BACKGROUND OF THE DISCLOSURE

1. Field of the Disclosure

This disclosure relates generally to apparatus and methods fordispensing a viscous material on a substrate, such as a printed circuitboard, and more particularly to a system and related methods foraccurately dispensing material on a circuit board based on detecting anedge of the circuit board.

2. Discussion of Related Art

There are several types of prior art dispensing systems used fordispensing precise amounts of liquid or paste for a variety ofapplications. One such application is the assembly of integrated circuitchips and other electronic components onto circuit board substrates. Inthis application, automated dispensing systems are used for dispensingvery small amounts, or dots, of viscous material onto a circuit board.The viscous material may include liquid epoxy or solder paste, or someother related material. Prior to performing a dispensing operation, thecircuit board must be aligned or otherwise registered with a dispenserof the dispensing system. In one known method, this may be achieved byemploying a vision system of the dispensing system to verify thelocation of landmarks, otherwise known as fiducials, on the circuitboard. Specifically, to align the circuit board with the dispensing unitof the dispensing system, images of at least two fiducials are taken bya camera of the vision system. If the circuit board is out of position,a gantry capable of moving the dispenser may be manipulated to accountfor the actual position of the circuit board. In another embodiment, asupport surface upon which the circuit board rests may be manipulated toaccurately position the circuit board prior to performing a dispenseoperation.

One issue associated with the use of identifying fiducials to align thecircuit board with the dispensing unit is when the area requiringdispensing is not well defined with reference to the fiducials. Forexample, if the area to dispense is not referenced with respect to thefiducials, the resulting dispense operation may be very inaccurate, andunder many instances, may not meet the processing requirements.

SUMMARY OF THE DISCLOSURE

The present disclosure describes a technique of dispensing materialwithout the use of fiducials or other target objects by locating an edgeor edges of the substrate and using the edge to orient a dispensing unitof a dispenser relative to the found edge.

This technique includes the ability to accurately dispense a line ofmaterial located on an edge of a substrate. After finding an edge withone or more measurement locations, a specified dispense location isadjusted relative to the found edge. While the dispensed edge isnormally parallel to the edge, parallel dispensing is not required. Thestart and the end locations of the dispensed line of material by usingthis technique is less critical than the length of the line dispensed,which may be adjusted.

This technique further includes the ability to accurately dispense aline of material onto a substrate by using two different edges. Byfinding two different edges, the method includes dispensing at alocation that is relative to the two edges.

This technique further includes the ability to accurately dispense dotsor line segments located on an edge of a substrate.

This technique further includes the ability to measure the edges in asingle camera field of view or in different fields of view.

This technique further includes the ability to dispense non-straightedges on an edge of a substrate with additional measurement locationsand/or dimensional information about the edge or other feature of thesubstrate.

One aspect of the present disclosure is directed to a dispensing systemfor depositing material on an electronic substrate. In one embodiment,the dispensing system includes a frame, a dispensing unit gantry movablycoupled to the frame, and a dispensing unit coupled to the dispensingunit gantry. The dispensing unit is configured to deposit material ontothe substrate during the dispense operation. The dispensing systemfurther includes a vision system gantry coupled to the frame and avision system coupled to the vision system gantry. The vision system isconfigured to obtain one or more images of the electronic substrateprior to performing the dispense operation. A controller is coupled tothe dispensing unit gantry, the dispensing unit, the vision systemgantry, and the vision system. The controller is configured tomanipulate the vision system with the vision gantry system to move tothe position defined by a feature, to acquire an image of at least aportion of a feature, to search for an edge of interest along a centerof the image, and to return a value indicating an offset of zero (0),which is interpreted as the location that is exactly as expected, and anoffset that reflects where the edge of interest intersected that axislocation.

Embodiments of the dispensing system further may include a supportassembly coupled to the frame. The support assembly may be configured tosupport the electronic substrate during a dispense operation. In oneembodiment, the controller further may be configured to manipulate thevision system with the vision gantry system to move to the positiondefined by a vertical feature and to acquire the image, and if searchingfor a vertical edge or edges, then search for the edge of interest alongthe center row of the image, and return a value indicating a y-axisoffset of zero (0), which is interpreted as the y-axis location that isexactly as expected, and an x-axis offset that reflects where the edgeof interest intersected that y-axis location. The controller further maybe configured to manipulate the vision system with the vision gantrysystem to move to the position defined by a horizontal feature and toacquire the image, and if searching for a horizontal edge or edges, thensearch for the edge of interest along the center column of the image,and return a value indicating a x-axis offset of zero (0), which isinterpreted as the x-axis location that is exactly as expected, and any-axis offset that reflects where the edge of interest intersected thatx-axis location. The feature may be is consistent or inconsistent. Thecontroller further may be configured to adjust an edge point to find aconsistent portion of the feature.

Another aspect of the disclosure is directed to a method of depositingmaterial on an electronic substrate with a dispensing system of the typeincluding a frame, a dispensing unit gantry movably coupled to theframe, a dispensing unit coupled to the dispensing unit gantry, thedispensing unit being configured to deposit material onto the substrateduring the dispense operation, a vision system gantry coupled to theframe, and a vision system coupled to the vision system gantry, thevision system being configured to obtain one or more images of theelectronic substrate prior to performing the dispense operation. In oneembodiment, the method comprises: manipulating the vision system withthe vision gantry system to move to the position defined by a feature;acquiring an image of at least a portion of a feature, to search for anedge of interest along a center of the image; and returning a valueindicating an offset of zero (0), which is interpreted as the locationthat is exactly as expected, and an offset that reflects where the edgeof interest intersected that axis location.

Embodiments of the method further may include, for a vertical feature,manipulating the vision system with the vision gantry system to move tothe position defined by the vertical feature and to acquire the image,and if searching for a vertical edge or edges, then search for the edgeof interest along the center row of the image, and return a valueindicating a y-axis offset of zero (0), which is interpreted as they-axis location that is exactly as expected, and an x-axis offset thatreflects where the edge of interest intersected that y-axis location.For a horizontal feature, the method further may include manipulatingthe vision system with the vision gantry system to move to the positiondefined by a horizontal feature and to acquire the image, and ifsearching for a horizontal edge or edges, then search for the edge ofinterest along the center column of the image, and return a valueindicating a x-axis offset of zero (0), which is interpreted as thex-axis location that is exactly as expected, and an y-axis offset thatreflects where the edge of interest intersected that x-axis location.The feature may be consistent or inconsistent. The method further mayinclude adjusting an edge point to find a consistent portion of thefeature.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are not intended to be drawn to scale. In thedrawings, each identical or nearly identical component that isillustrated in various figures is represented by a like numeral. Forpurposes of clarity, not every component may be labeled in everydrawing. In the drawings:

FIG. 1 is a schematic view of a dispenser of an embodiment of thepresent disclosure;

FIGS. 2A and 2B are top plan views of exemplary electronic substrates;

FIGS. 3A, 3B and 3C are enlarged top plan views of portions of theelectronic substrate shown in FIG. 2A;

FIGS. 4A and 4B are top plan views of a portion of an exemplarysubstrate showing the relationships established by process-program databetween a reference-line and an edge-line;

FIGS. 5A, 5B, 5C and 5D are enlarged top plan views of a portion of theelectronic substrate illustrated in FIG. 2A showing relationshipsbetween a feature and an edge of the electronic substrate;

FIGS. 6A, 6B and 6C are enlarged top plan views of a portion of theelectronic substrate illustrated in FIG. 3A showing a degraded featureof an exemplary electronic substrate;

FIG. 7 is an enlarged top plan view of a portion of an exemplaryelectronic substrate showing a locate-edge feature;

FIG. 8 is a side view of a pad having defined edges and an enlarged sideview of the pad;

FIG. 9 illustrates two images of a pad that is partially routed;

FIG. 10 illustrates two images of a pad that is partially routed butless so than the pad shown in FIG. 9; and

FIGS. 11A, 11B and 11C are schematic views of an edge, two found edges,and a selected reference edge, respectfully.

DETAILED DESCRIPTION OF THE DISCLOSURE

For the purposes of illustration only, and not to limit the generality,the present disclosure will now be described in detail with reference tothe accompanying figures. This disclosure is not limited in itsapplication to the details of construction and the arrangement ofcomponents set forth in the following description or illustrated in thedrawings. The principles set forth in this disclosure are capable ofother embodiments and of being practiced or carried out in various ways.Also the phraseology and terminology used herein is for the purpose ofdescription and should not be regarded as limiting. The use of“including,” “comprising,” “having,” “containing,” “involving,” andvariations thereof herein, is meant to encompass the items listedthereafter and equivalents thereof as well as additional items.

Various embodiments of the present disclosure are directed to viscousmaterial dispensing systems, devices including dispensing systems, andmethods of aligning dispensers with substrates, such as printed circuitboards. Embodiments disclosed herein are directed to techniques fordispensing material on an electronic substrate without the use offiducials by locating one or more edges of the electronic substrate, andusing the location(s) of the edge(s) to orient a dispensing unit or pumpof the dispensing system to enhance a dispense operation.

The systems and methods further enable the accurate dispense of a linelocated along the edge of the electronic substrate. Specifically, afterfinding an edge using one or more measurement locations, the specifieddispense location is then adjusted relative to the found edge. While thedispensed edge is normally parallel to the edge is not required. Thestart and end locations of the dispense operation using this techniqueis less critical than the length of the line that is adjusted by thefound edge.

The systems and methods further enable the accurate dispense of a linelocated across or to different edges. Specifically, this techniqueutilizes two different edges of the electronic substrate and thenperforms a dispense operation relative to the two edges. One example ofusing this technique is to dispense the center between the two edges.

The systems and methods further enable the accurate dispense of dots orline segments. Specifically, a dispensing unit of the dispensing systemmay be modified to dispense dots.

The systems and methods further enable the use of a vision system tomeasure edges of the electronic substrate with a single camera field ofview or in different fields of view.

The systems and methods further enable the ends of the dispensed linesto be more accurately located by utilizing an additional edge more orless perpendicular to a dispense reference edge. Non-straight edges maybe similarly dispensed although more measurement points may be requiredand/or dimensional information about the edge supplied.

FIG. 1 schematically illustrates a dispenser, generally indicated at 10,according to one embodiment of the present disclosure. The dispenser 10is used to dispense a viscous material (e.g., an adhesive, encapsulent,epoxy, solder paste, underfill material, etc.) or a semi-viscousmaterial (e.g., soldering flux, etc.) onto an electronic substrate 12,such as a printed circuit board or semiconductor wafer. The dispenser 10may alternatively be used in other applications, such as for applyingautomotive gasketing material or in certain medical applications. Itshould be understood that references to viscous or semi-viscousmaterials, as used herein, are exemplary and intended to benon-limiting. The dispenser 10 includes first and second dispensingunits or heads, generally indicated at 14 and 16, respectively, and acontroller 18 to control the operation of the dispenser. Although twodispensing units are shown, it should be understood that one or moredispensing units may be provided.

The dispenser 10 may also include a frame 20 having a base or support 22for supporting the substrate 12, a dispensing unit gantry 24 movablycoupled to the frame 20 for supporting and moving the dispensing units14, 16, and a weight measurement device or weigh scale 26 for weighingdispensed quantities of the viscous material, for example, as part of acalibration procedure, and providing weight data to the controller 18. Aconveyor system (not shown) or other transfer mechanism, such as awalking beam may be used in the dispenser 10 to control loading andunloading of substrates to and from the dispenser. The gantry 24 can bemoved using motors under the control of the controller 18 to positionthe dispensing units 14, 16 at predetermined locations over thesubstrate. The dispenser 10 may include a display unit 28 connected tothe controller 18 for displaying various information to an operator.There may be an optional second controller for controlling thedispensing units.

Prior to performing a dispensing operation, as described above, thesubstrate, e.g., printed circuit board, must be aligned or otherwise inregistration with a dispenser of the dispensing system. The dispenserfurther includes a vision system 30, which is coupled to a vision systemgantry 32 movably coupled to the frame 20 for supporting and moving thevision system. As described, the vision system 30 is employed to verifythe location of landmarks, known as fiducials, on the substrate. Oncelocated, the controller can be programmed to manipulate the movement ofone or both of the dispensing units 14, 16 to dispense material on theelectronic substrate.

Systems and methods of the present disclosure are directed to aligningthe substrate (e.g., circuit board) by utilizing an edge of thesubstrate. The description of the systems and methods provided hereinreference exemplary electronic substrates (e.g., printed circuitboards), which are supported on the support 22 of the dispenser 10.However, other items may be aligned, such as an edge of a semiconductorchip. In one embodiment, the dispense operation is controlled by thecontroller 18, which may include a computer system configured to controlmaterial dispensers. In another embodiment, the controller 18 may bemanipulated by an operator.

With reference to FIGS. 2A and 2B, a description of an exemplary systemand method is provided. In particular, the relationship between an edgeof the substrate found at runtime and a location at which an edge-lineand/or edge-dot is dispensed will be described. FIG. 2A illustrates asubstrate, generally indicated at 200, having a planar surface 202, apair of fiducials 204, 206 represented by circles that are used toestablish a “global” coordinate system, a three by three array 208 ofdevices, such as copper pads, each of which has a well-definedrelationship to the pair of fiducials (as well as to any other devicesprovided on the substrate), and a feature 210, illustrated as anelongated pad in FIG. 2A. The feature 210 has a well-definedrelationship to an edge 212 of the substrate 200, and a loosely definedrelationship with the other features (e.g., array 208) provided on thesubstrate and the global fiducials.

FIG. 2B illustrates a substrate, generally indicated at 220, having asimilar layout to the substrate 200 shown in FIG. 2A, but longer inlength. All of the features shown and described with reference tosubstrate 200 of FIG. 2A are represented by the same reference numberswhen describing the substrate 220 of FIG. 2B. The relationship betweenthe fiducials 204, 206 and the devices (e.g., array 208) is unchangedand the relationship between the elongated pad 210 and the edge 212 ofthe substrate 220 is similarly unchanged. However, the relationshipbetween the devices (e.g., array 208) and the elongated pad 210 haschanged in that the distance is greater.

FIG. 3A shows an expanded view of the feature (e.g., elongated pad 210)on the right-hand side of the substrate, e.g., the substrate 200 shownin FIG. 2A. As shown and described below, the feature 210 may be used todefine a reference-line 214, which the edge-line and the edge-dotcommands (or an arc command), and in turn, may be used to determinewhere to dispense material onto the substrate. Each dashed box 216, 218illustrated in FIG. 3A illustrates a field of view of a camera (notshown) of the vision system 30. With this particular example, it shouldbe observed that the position of each field of view is such that acenter pixel of the camera corresponds to a common edge along thereference-line 214. The feature edge (e.g., reference-line 214) closestto the physical edge 212 of the substrate 200 is utilized. The operatorof the dispenser may desire to use the edge that exhibits the mostconsistent relationship to the physical edge 212 of the substrate 200.In the event that both feature edges exhibit a consistent relationshipto the physical edge 212, which implies that the feature width isconstant, then either edge may be selected.

FIGS. 3B and 3C illustrate enlarged views of each of the field of view(as represented by dashed boxes 216, 218 shown in FIG. 3A. These viewsalso illustrate the established search gates. Please note that whenperforming the method described herein the following assumptions aremade:

-   -   the dispensed line is 1 millimeter (mm) to the left of the        physical edge of the substrate (i.e., 5 mm to the right of the        feature edge);    -   the dispensed line extends by 2 mm in both directions (as        compared to the endpoints of the reference-line);    -   the dispensed line begins towards the bottom of the substrate        (e.g., the front of the dispenser) and moves toward the top of        the substrate (e.g., the rear of the dispenser);    -   the coordinate associated with the upper field of view (e.g.,        the position associated with the 1^(st) Locate-EdgeDef command)        is 88, 12; and    -   the coordinate associated with the lower field of view (e.g.,        the position associated with the 2^(nd) Locate-EdgeDef command        is 88, 6.

Based on these assumptions and the substrate 200 as shown in FIG. 3A,the endpoints 222, 224 of the edge-line 226 to be deposited should havea start position (e.g., x, y) of 93, 4 and an end position (e.g., x′,y′) of 93, 14.

FIG. 4A illustrates the relationships established by process-programdata between the reference-line 214 and the edge-line 226. Specifically,the following relationships may be established using process programdata (and based on any current transformation in effect):

-   -   a nominal angle for the reference-line 214 based on “taught”        locations (in this instance 90 degrees);    -   a midpoint 228 of the reference-line 214; and    -   relationships (e.g., angle and vector distance) from the        midpoint 228 of the reference-line 214 to the start point 222 of        the edge-line 226 and the endpoint 224 of the edge-line.

FIG. 4B illustrates how these relationships are applied during adispensing operation. Specifically, at runtime, the following actionsare performed:

-   -   establish the endpoints 230, 232 of the reference-line 214 using        a pair of Locate-EdgeDef commands;    -   based on these endpoints 230, 232, the following is determined        -   the delta angle of the reference-line 214 (e.g., the current            reference-line angle minus the original reference-line            angle, which may be −15 degrees), and        -   the (runtime) midpoint 228 of the reference-line 214; and    -   from the (runtime) midpoint 228, the location of each endpoint        222, 224 of the edge-line is projected by using        -   the (unchanged) vector distance from the midpoint 228 to the            edge-line endpoint 222 or 224 in question, and        -   the original angle (from midpoint to endpoint) adjusted by            the delta angle.

Based on the foregoing, a dispense operation may be performed todispense the feature. However, there may be instances in which ahorizontal (rather than vertical) feature is to be dispensed. Duringsuch instances in which a vertical feature or a horizontal feature isdesired, there is a constraint to find only half of the coordinate pair(e.g., an x-axis position when searching for vertical features and ay-axis position when searching for horizontal features).

With this constraint in mind, at runtime, in one embodiment, thefollowing method is performed:

-   -   move to the position defined by the Locate-EdgeDef command;    -   acquire an image;    -   if searching for a vertical edge or edges, then        -   search for the edge of interest along the center row of the            image, and        -   return a value indicating a y-axis offset of zero (0), which            is interpreted as the y-axis location that is exactly as            expected, and an x-axis offset that reflects where the edge            of interest intersected that y-axis location; and    -   if searching for a horizontal edge or edges, then        -   search for the edge of interest along the center column of            the image, and        -   return a value indicating a x-axis offset of zero (0), which            is interpreted as the x-axis location that is exactly as            expected, and an y-axis offset that reflects where the edge            of interest intersected that x-axis location.

Based on the approach just described, there are some issues to beconsidered. For example, assuming an angle of the reference-line 214 atruntime closely minors an angle when the program was taught, then thepair of found points may be offset by a similar amount (in either thex-axis or the y-axis direction). This, in turn, results in the (runtime)reference-line 214 being an expected vector length and with a reasonablemidpoint 228 (from which to project the edge-line endpoints). As noted,with the absence of information to positively identify a point alongboth axes the reference-line established at runtime will still have someability to slide along the overall feature edge.

If, on the other hand, the reference-line 214 is rotated (as in FIG.4B), as compared to the angle when taught, the methodology is somewhatcomplicated. For example, assuming that the point of rotation happenedto be the exact midpoint of the reference-line 214, which is unlikely,then each of the found edge points would appear to move closer to orfarther from the midpoint 228 by an equidistant amount. In thisinstance, the computed (runtime) midpoint 228 is correct. In a morelikely instance, the point of rotation is something other than themidpoint 228 of the reference-line 214. Barring the possibility that oneof the reference-line endpoints 230, 232 corresponds to the point ofrotation, then both points will move closer to or farther from themidpoint 228 of the reference line but not by an equidistant amount.This effect is due to the fact that the edge-line endpoints 222, 224 arereferenced from the midpoint 228 of the reference-line 214, which tendsto average out any error to some extent.

The foregoing is premised on consistent features that are conducive toaccurately finding an edge of interest and have a well-definedrelationship to the edge of the substrate or some other area ofinterest.

FIG. 5A illustrates a partial view of FIG. 3A, which is referenced aswell. As described, the program is defined such that the dispenser 10dispenses the edge-line 226 five millimeters (5 mm) to the right ofreference-line 214. Assuming that the reference-edge 214 is sixmillimeters (6 mm) from the edge 212 of the substrate 200, then a centerof the dispensed line 226 is a desired one millimeter (1 mm) in from theedge of the substrate 200.

FIG. 5B illustrates a situation in which the relationship between theedges of the vertical feature 210 and the edge 212 of the substrate 200is not consistent. In this situation, an offset from the reference-line214 to the dispensed line 226 is exactly as specified but the goal ofdispensing one millimeter (1 mm) from the physical edge 212 will nothave been met.

FIGS. 5C and 5D illustrate another situation in which the relationshipbetween the inner (e.g., left) edge of the feature 210 and the edge 212of the substrate 200 is constant, but the width of the feature can vary.

FIG. 6A illustrates a portion of FIG. 4A, which is referenced as well.FIG. 6B illustrates a situation in which the feature 210 is degraded at234 or otherwise imperfect to the point where the two edge points 230,232 are found when employing the vision system 30. When this occurs, thebad point 234 (runtime) of the reference-line 214 is skewed inrelationship with a true edge of the feature 210, which in turn resultsin an edge-line 226 that does not properly track the edge 212 of thesubstrate 200.

FIG. 6C illustrates the same degraded feature 234 shown in FIG. 6B.However, it is assumed that the edge point 232 is somehow adjusteddownward to land on a good portion of the feature 210. The problem withthis solution is that the dispensed line 226 is shifted down thusintroducing a y-axis error, as depicted by a horizontal dashed line 236that spans FIGS. 6A, 6B and 6C.

Another aspect of the disclosure is directed to a system and method tolocate an edge, which can be referred to as a locate-edge commandfeature. The locate-edge command may be used to enable an operator todispense edge-lines and edge-dots that track a found edge. To achievethis feature, the locate-edge command is taught in pairs, with a secondcommand function immediately following a first command function. Alledge-lines and edge-dots following the locate-edge commands have theirpositions modified by the found position of the edge. When teaching thelocate-edge command, an operator aligns the reference edge being taughtwith the center of the field of view. The operator then adjusts a gatedefining the region of interest to encompass the edges, which will bewithin the search region. The gate can also encompass edges that are notof interest.

For example, FIG. 7 illustrates a substrate 700 having a pad 702. Asshown, a left edge of a pad is the reference edge, and therefore alignedto the center of the field of view. However, because the right edge ofthe pad is in such close proximity to the left edge of the pad, it isincluded in the region of interest. A gate is adjusted such that boththe left and the right edges of the pad are within the search area.Ample room should be provided so that the edges from components that arenot of interest are not contained within the region of interest. Forthis example, the operator can select the edge as being type “Right Edge2” (second edge in from the left-hand edge). If it can be guaranteedthat no edges are found to the left, then the operator can select theedge to be “Left Edge 1” (first edge in from the left). However,features provided on the substrate may sometimes be present outside theedge of interest to prohibit this selection. Any edges found to the leftof the reference edge are ignored. For this example, the found edgesfrom right to left would be as follows—right edge of pad, left edge ofpad, right edge of tab, and left edge of tab. The controller wouldselect the left edge of the pad as the “Right Edge 2,” which is thesecond edge from the right.

The controller may be programmed to detect pad edges that use a changein brightness to determine the location of an edge. Specifically,controller in cooperation with the vision system may select a changefrom dark background to bright foreground. The edge position isdetermined as the location where there is a maximum change inbrightness. FIG. 8 illustrates the pad 702 shown in FIG. 7. Theleft-hand side of FIG. 8 illustrates the pad 702 with very well-definedvertical edges. The right-hand side of FIG. 8 illustrates an enlargedsection of the same pad 702. From the enlarged view, it is shown thatthe edge transition actually occurs over several pixels. The found edgelocations (maximum change in brightness) are shown.

Each edge of a sub-region is assigned a strength value, which is ameasure of how well defined an edge is. Clearly, defined edges that runfrom both sides of the region of interest have a high value. Faint orbroken edges have a reduced score. A threshold is determined fromempirical testing, which exclude weak or broken edges that are less thanone-third of their expected vale. This allows for some level ofcontamination.

Consider the pad image illustrated in FIG. 9, which indicates the issuewith the pads that are partly routed, giving them a scalloped effect.The controller in cooperation with the vision system is programmed todetect three lines, which are shown on the right-hand image of FIG. 9.If selecting “Right Edge 2,” the middle edge would be the referenceedge.

In FIG. 10, a partially scalloped pad is shown. However, the majority ofthe pad is not routed. Three lines are still detected, with the middleline being below the minimum strength, and thus will not be used. “RightEdge 2” in this case would yield the left most line or edge.

To test the minimum edge width capability of the edge detection systemand method, a synthetic image may be created with a one-pixel wide linedrawn in it. This image is passed into the edge detection process todetermine if it could successfully find the edges. The process findsboth the left-hand and the right-hand edges. FIG. 11A illustrates theedge as taught. FIG. 11B illustrates the two edges found (as indicatedby dashed lines). FIG. 11C illustrates the reference edge selected(i.e., “Right Edge 2”).

Individual detection edges used while performing methods of the presentdisclosure may be achieved by utilizing a camera and image processingsoftware, a laser probe, a mechanical probe, or any other suitabledevice.

A single edge may be determined using two or more locations.Alternatively, a pair of edges may be detected with dispensing beinglocated relative to both sets of edges.

The computer system may include an operating system that manages atleast a portion of the hardware elements included in the computersystem. Usually, a processor or controller executes an operating systemwhich may be, for example, a Windows-based operating system, such as,Windows NT, Windows 2000 (Windows ME), Windows XP or Windows Vistaoperating systems, available from the Microsoft Corporation, a MAC OSSystem X operating system available from Apple Computer, one of manyLinux-based operating system distributions, for example, the EnterpriseLinux operating system available from Red Hat Inc., a Solaris operatingsystem available from Sun Microsystems, or a UNIX operating systemavailable from various sources. Many other operating systems may beused, and the embodiments disclosed herein are not intended to belimited to any particular implementation.

The processor and operating system together define a computer platformfor which application programs in high level programming languages maybe written. These component applications may be executable,intermediate, for example, C-, bytecode or interpreted code whichcommunicates over a communication network, for example, the Internet,using a communication protocol, for example, TCP/IP. Similarly, aspectsin accord with the present disclosure may be implemented using anobject-oriented programming language, such as .Net, SmallTalk, Java,C++, Ada, or C# (C-Sharp). Other object-oriented programming languagesmay also be used. Alternatively, functional, scripting, or logicalprogramming languages may be used.

Additionally, various aspects and functions in accordance with thepresent disclosure may be implemented in a non-programmed environment,for example, documents created in HTML, XML or other format that, whenviewed in a window of a browser program, render aspects of agraphical-user interface or perform other functions. Further, variousembodiments in accord with the present disclosure may be implemented asprogrammed or non-programmed elements, or any combination thereof. Forexample, a web page may be implemented using HTML while a data objectcalled from within the web page may be written in C++. Thus, thedisclosure is not limited to a specific programming language and anysuitable programming language could also be used.

Having thus described several aspects of at least one embodiment of thisdisclosure, it is to be appreciated various alterations, modifications,and improvements will readily occur to those skilled in the art. Suchalterations, modifications, and improvements are intended to be part ofthis disclosure, and are intended to be within the spirit and scope ofthe invention. Accordingly, the foregoing description and drawings areby way of example only.

What is claimed is:
 1. A dispensing system for depositing material on an electronic substrate, the dispensing system comprising: a frame; a dispensing unit gantry movably coupled to the frame; a dispensing unit coupled to the dispensing unit gantry, the dispensing unit being configured to deposit material onto the substrate during the dispense operation; a vision system gantry coupled to the frame; a vision system coupled to the vision system gantry, the vision system being configured to obtain one or more images of the electronic substrate prior to performing the dispense operation; and a controller coupled to the dispensing unit gantry, the dispensing unit, the vision system gantry, and the vision system, the controller being configured to manipulate the vision system with the vision gantry system to move to the position defined by a feature, to acquire an image of at least a portion of a feature, to search for an edge of interest along a center of the image, and to return a value indicating an offset of zero (0), which is interpreted as the location that is exactly as expected, and an offset that reflects where the edge of interest intersected that axis location.
 2. The dispensing system of claim 1, wherein the controller further is configured to manipulate the vision system with the vision gantry system to move to the position defined by a vertical feature and to acquire the image, and if searching for a vertical edge or edges, then search for the edge of interest along the center row of the image, and return a value indicating a y-axis offset of zero (0), which is interpreted as the y-axis location that is exactly as expected, and an x-axis offset that reflects where the edge of interest intersected that y-axis location.
 3. The dispensing system of claim 2, wherein the controller further is configured to manipulate the vision system with the vision gantry system to move to the position defined by a horizontal feature and to acquire the image, and if searching for a horizontal edge or edges, then search for the edge of interest along the center column of the image, and return a value indicating a x-axis offset of zero (0), which is interpreted as the x-axis location that is exactly as expected, and an y-axis offset that reflects where the edge of interest intersected that x-axis location.
 4. The dispensing system of claim 3, wherein the feature is consistent.
 5. The dispensing system of claim 3, wherein the feature is inconsistent, and wherein the controller further is configured to adjust an edge point to find a consistent portion of the feature.
 6. The dispensing system of claim 1, further comprising a support assembly coupled to the frame, the support assembly being configured to support the electronic substrate during a dispense operation.
 7. A method of depositing material on an electronic substrate with a dispensing system of the type including a frame, a dispensing unit gantry movably coupled to the frame, a dispensing unit coupled to the dispensing unit gantry, the dispensing unit being configured to deposit material onto the substrate during the dispense operation, a vision system gantry coupled to the frame, and a vision system coupled to the vision system gantry, the vision system being configured to obtain one or more images of the electronic substrate prior to performing the dispense operation, the method comprising: manipulating the vision system with the vision gantry system to move to the position defined by a feature; acquiring an image of at least a portion of a feature, to search for an edge of interest along a center of the image; and returning a value indicating an offset of zero (0), which is interpreted as the location that is exactly as expected, and an offset that reflects where the edge of interest intersected that axis location.
 8. The method of claim 7, wherein for a vertical feature, the method further comprising manipulating the vision system with the vision gantry system to move to the position defined by the vertical feature and to acquire the image, and if searching for a vertical edge or edges, then search for the edge of interest along the center row of the image, and return a value indicating a y-axis offset of zero (0), which is interpreted as the y-axis location that is exactly as expected, and an x-axis offset that reflects where the edge of interest intersected that y-axis location.
 9. The method of claim 8, wherein for a horizontal feature, the method further comprising manipulating the vision system with the vision gantry system to move to the position defined by a horizontal feature and to acquire the image, and if searching for a horizontal edge or edges, then search for the edge of interest along the center column of the image, and return a value indicating a x-axis offset of zero (0), which is interpreted as the x-axis location that is exactly as expected, and an y-axis offset that reflects where the edge of interest intersected that x-axis location.
 10. The dispensing system of claim 9, wherein the feature is consistent.
 11. The dispensing system of claim 9, wherein the feature is inconsistent, and wherein the method further comprises adjusting an edge point to find a consistent portion of the feature. 